<?php
namespace app\admin\model;

use think\Model;

/**
 * 区服模型
 */
class Partition extends Base
{

    protected $autoWriteTimestamp = true;
    protected $insert             = ['status' => 1];

/**
 * 首先，这3个的大致中文意思：
 * hasOne：有一个，加上主谓语应该是 ，A 有一个 B
 * hasMany：有很多，A 有很多 B
 * belongsTo：属于， A 属于 B
 *
 * 这里我们准备3张表来理解他们的关系：
 * user_group 用户分组表：id、title
 * user 用户表：id、user_group_id、username、password
 * profile 用户信息表：id、user_id、nickname、sex
 *
 * 1、user表需要关联user_group表，表示每一个 用户 需要知道该用户是 哪个用户分组的；
 * 2、profile表 需要关联 用户表，表示该用户信息数据 是哪个用户的信息；
 *
 * 我们知道一个用户组下面可以有很多用户，所以：user_group hasMany user；
 * 一个用户 属于 一个用户组，所以：user belongsTo user_group；
 *
 * 同样是user_group和user表，但我们出发点不同，关系也就不一样了。
 *
 * 每个用户都应该有唯一一条用户信息数据，所以：user hasOne profile；
 *
 * 一条用户信息 属于 一个用户，所以：profile belongsTo user
 */

    /**
     * 文章属于 某一个类 belongsTo
     * @return [type] [description]
     */
    public function platform()
    {
        return $this->belongsTo("platform", "platform_id", "id"); //表 关联id #typeid  主 id
    }

    /**
     * 修改器，将时间格式自动修改
     * @param string $value [description]
     */
    public function setUpdateTimeAttr($value = '')
    {
        return strtotime($value);
    }

    /**
     * 模型修改过程
     * @param  string $id   [description]
     * @param  [type] $post [description]
     * @return [type]       [description]
     */
    public static function edit($id = '0', $post)
    {
        if ($id != 0 && !empty($post)) {
            $data              = Article::get($id);
            $data->title       = trim($post['title']);
            $data->typeid      = $post['typeid'];
            $data->keywords    = trim($post['keywords']);
            $data->description = trim($post['description']);
            $data->article_img = $post['article_img'];
            $data->body        = $post['body'];
            $data->update_time = $post['update_time'];
            $data->status      = $post['status'];
            //var_dump($data);

            if ($data->save() > 0) {
                return true;
            } else {
                return false;
            }

        }
    }

}
